# @Time    :2025/4/2 8:32
"""
一、远择题
·以下哪种异常通常在尝试访问字典中不存在的键时引发？（）
A. KeyError B. IndexError C.ValueError D. TypeError
以下关于try-except-finally语句的描述，正确的是（）
I
A.finally块中的代码只有在没有异常发生时才会执行B.finally块中的代码无论是否发生异常都会执行
C.如果try块中发生异常，except块和finally块都不会执行D.except块和finally块只能存在一个
二、简答题
1.简述异常处理的作用。
2.自定义异常类通常继承自哪个基类？
三、编程题
1. 编写一段Python代码，尝试将字符串"123abc"转换为整数，如果转换失败，捕获ValueError异常，将
异常信息记录到一个文本文件 error.log中。
2.定义一个函数check_age，该函数接受一个年龄参数。如果年龄小于0，抛出一个自定义异常
InvalidAgeError;如果年龄大于120，抛出UnrealisticAgeError。这两个自定义异常类都继承自
Exception类。调用该函数并传入一个不合法的年龄值，捕获并处理异常。

"""